// pages/index/hotArticle/hotArticle.js
let app = getApp()
Page({

  /**
   * 页面的初始数据
   */
  data: {
    //  定义集合，保存所有的文章列表信息
    articleList:[],
    yuLan:'',
    //  定义一个要访问的页码
    pageNum:1,
    //  定义一个用来保存所有数据的总页数
    totalPageCount:0,
    isLoading:false
  },

//  定义一个方法，调用后端接口，动态的分页获取文章列表信息
getData(){
    // 只要请求数据,把节流阀改为true
    this.setData({
        isLoading: true
    })
    let that = this;
    wx.showLoading({
      title: '正在加载中',
    })
    wx.request({
        method:'get',
      url: 'http://localhost:8888/article/findByPage',
      data:{
        channelId:409,
        pageNum:that.data.pageNum,
        pageSize:10
      },
      success(res){
          console.log(res.data.data.list)
        that.setData({
            // 新查询数据与老数据合并
            articleList:[...that.data.articleList,...res.data.data.list],
            //  动态获取总页数
            totalPageCount:res.data.data.totalPageCount
        })
      },
      complete(){
          //    关闭提示信息
        wx.hideLoading();
        //  关闭下拉刷新页面
        wx.stopPullDownRefresh();
        //  释放节流阀
        that.setData({
            isLoading:false
        })
    }
    });
},

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
      // 判断是否登录，如果没有登录，则提示需要登录并跳转到登录页面
      if(app.globalData.userInfo==null){
          //    没有登录，则跳转到登录页面
          wx.showModal({
            title: '提示',
            content: '你还没登录，请登录',
            complete: (res) => {
              if(res.cancel){
                  wx.switchTab({
                    url: '/pages/index/index',
                  })
              }
              if (res.confirm) {
                wx.redirectTo({
                  url: '/pages/my/login/login?backUrl=/pages/index/hotArticle/hotArticle',
                })
              }
            }
          })
          return;
      }else{
        this.setData({
            yuLan:app.globalData.downLoad
          })
        this.getData();
      }
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {
    //  一旦刷新，则让数据恢复初始值
    this.setData({
        articleList:[],
        pageNum:1,
        totalPageCount:0,
        isLoading: false
    })
    //  重新查询
    this.getData();
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {
      //    判断，如果节流阀为true，则不处理触底事件
      if(this.data.isLoading){
          return
      }
    // console.log('触发了触底事件')
    //  访问的页码自增1
    this.setData({
        pageNum:this.data.pageNum+1
    })
    // console.log(this.data.pageNum)
    if(this.data.pageNum>this.data.totalPageCount){
        wx.showToast({
          title: '没有更多数据了',
        })
        return;
    }
    //  当页码自增后，要调用获取数据的接口
    this.getData();
    //  把请求得到的数据追加到原数据后面
  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})